--Declaro las variables

Declare	@SQL Varchar(Max), @tableName nvarchar(50), @nombre nvarchar(50);


--Asigno valores a las variables y las uso. 
--Recordar que para escapar una comilla simple "'" hay que ponerle una comilla simple "'" adelante, es decir '' = '
--Por eso NOTAR que cuando la variable es un nvarchar y quiero que en la consulta lo siga siendo (y no que represente un nombre de tabla o de columna)
--debo poner 4 comillas delante y detras de la variable para que el valor que se refleje sea 'cadena' (Caso:@nombre)

Select		@tableName = N'Perfil',
		@nombre = N'admin',
	@SQL= 'Select * from ' + @tableName + ' where nombre= ''' + @nombre + ''''

--Print me imprime la cadena que estoy formando, esto permite detectar errores

Print @SQL;
Exec(@SQL);